#pragma once

#include <QWidget>
#include "ui_coneWindow.h"
#include "modelSoft.h"

//QT_BEGIN_NAMESPACE
//namespace Ui { class coneWindowClass; };
//QT_END_NAMESPACE

class coneWindow : public QWidget
{
	Q_OBJECT

public:
	coneWindow(modelSoft* myModelSoft,ConeFeature* m_coneFeature,QWidget *parent = nullptr);
	~coneWindow();
	double get_cone_radius1();
	double get_cone_radius2();
	double get_cone_high();
	/*gp_Pnt get_cone_pos();*/

private slots:
	void makeCone_onClick();
	void receivePos(const TopoDS_Shape& shape);

protected:
	void createConnections();
	virtual void closeEvent(QCloseEvent* event) override;
	void onClickVertexSelect();
	void onRadius1Changed();
	void onRadius2Changed();
	void onHighChanged();

private:
	Ui::coneWindowClass* ui;
	modelSoft* myModelSoft;
	Standard_Integer shapeID;
	ConeFeature*  coneFeature;
	gp_Pnt point_pos = gp_Pnt(0, 0, 0);
	bool confirmCreate = false;
	Handle(QIVtkSelectionPipeline) conePipeline;
	//�����޸�ǰ�Ĳ���
	ConeFeature* beforeFeature = new ConeFeature();
	//��ʷ�����ѡ��ʱ��ʱ��ʾ��ʼ���ؽ�ģ
	ConeFeature* feature = new ConeFeature();
	Handle(QIVtkSelectionPipeline) coneTemPipeline;
};
